package edu.jsnu.service.ticket.order.dao;

import edu.jsnu.service.ticket.order.domain.Order;
import edu.jsnu.service.ticket.order.dto.OrderShow;
import edu.jsnu.service.ticket.order.dto.OrderVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface OrderMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(Order record);

    int insertSelective(Order record);

    Order selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(Order record);

    int updateByPrimaryKey(Order record);

    List<OrderShow> getAllOrder();

    OrderShow selectOrderById(Integer id);

    Integer updateOrderStatus(@Param(value = "id") Integer id, @Param(value = "status") Integer status);

    List<OrderVo> getOrderInfoByUserId(@Param(value = "userId")Integer userId);

    List<Order> getAllOrderByStatus(Integer status);

    Integer deleteByFilmId(Integer id);
}